package com.itxiao.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.itxiao.dao.SysDictDataDao;
import com.itxiao.dao.SysDictTypeDao;
import com.itxiao.entity.SysDictData;
import com.itxiao.pojo.bo.Page;
import com.itxiao.pojo.vo.PageResult;
import com.itxiao.pojo.vo.R;
import com.itxiao.pojo.vo.SysDictDataVo;
import com.itxiao.pojo.vo.SysDictTypeVo;
import com.itxiao.service.SysDictDataService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

/**
 * 字典数据表(SysDictData)表服务实现类
 *
 * @author makejava
 * @since 2025-10-11 16:42:07
 */
@Service
public class SysDictDataServiceImpl extends ServiceImpl<SysDictDataDao, SysDictData> implements SysDictDataService {
    @Resource
    private SysDictDataDao sysDictDataDao;
    @Override
    public R queryList(Page page) {
        // 1. 查询总记录数
        int total = sysDictDataDao.countByPage(page);
        // 2. 查询当前页数据
        List<SysDictDataVo> list = sysDictDataDao.queryListByPage(page);
        // 3. 封装分页结果
        PageResult<SysDictDataVo> result = new PageResult<>(list,total);
        return R.ok(result);
    }

    @Override
    public R add(SysDictData sysDictData) {
        int insert = sysDictDataDao.insert(sysDictData);
        if (insert  == 0) {
            return R.fail("插入失败");
        }
        return R.ok();
    }

    @Override
    public R updateInfo(SysDictData sysDictData) {
        int insert = sysDictDataDao.updateById(sysDictData);
        if (insert  == 0) {
            return R.fail("修改失败");
        }
        return R.ok();
    }

    @Override
    public R del(List<Integer> ids) {
        return R.ok(sysDictDataDao.deleteBatchIds(ids));
    }

    @Override
    public R deleteById(Integer id) {
        return R.ok(sysDictDataDao.deleteById(id));
    }
}

